;##############################################################################################################################
; Some code to read from a GIMP curves file and apply it to an image or, if running the batch mode version, several images.
;
; created for kml518 because of this discussion:  http://www.gimptalk.com/index.php?/topic/50107-batch-edit-curves/
;
(define selfmenuroot "<Image>/contributed")     ; Change these to suit yourself         
(define selfmenuentry "Curves From File...")
;
; ##############################################################################################################################
;
(define selfauthor "Kevin Payne")
(define selfcopyright "Copyright (C) 2011 Kevin Payne paynekj@hotmail.com")
;
; Some code from saulgoode: http://lists.xcf.berkeley.edu/lists/gimp-user/2010-January/016649.html
;
(define selffileversion "11.05.2011 Version 1.0 - First Go")

(define selfprocname "script-fu-kp24_read_curves")

(define selffilename "kp24_read_curves.scm")             ; Keep this up to data


(define tipstrip (string-append "Read and apply curves from a file" "\n\n\nRegisters in menu " selfmenuroot  "/" selfmenuentry "\n\nScript File name - " selffilename))

; get the curve data from the already open curves file
(define (kp24_get_curve_data stream wanted_channel mode)
  (let* (
          (token "")
          (channel_name "")
          (curve_data_list '())
        )
        (set! token (read stream))   ; should be (time 0)
        (set! token (read stream))   ; should be (channel channel_name)
        (set! channel_name (car (last token)))

        (set! token (read stream))   ; should be curve data      
        (if (eqv? wanted_channel channel_name)     ; if this is the channel we want
          (if (= mode 0)    ; explicit or spline curve wanted?
            (set! curve_data_list (cdr (cdr (car (cdr (cdr (cdr token)))))))    ; spline curve data
            (set! curve_data_list (cdr (cdr (car (cdr (cdr (cdr (cdr (cdr token)))))))))  ; explicit curve data
          )
          (set! curve_data_list (kp24_get_curve_data stream wanted_channel mode)) ; call itself recursively until the wanted one is found
        )
        curve_data_list ; return the curve data
  )
)

; open the curves file and get the wanted curve data
(define (kp24_read_channel_curve curve_filepath wanted_channel mode)
  (let* (
          (curve_data_list 0)
          (stream (open-input-file curve_filepath))
        )      
        ; get past the comment line
        (when (eqv? (peek-char stream) #\#)
          (read-char stream)
          (while (not (eqv? (read-char stream) #\newline)))
          (read-char stream)
        )
        
        (set! curve_data_list (kp24_get_curve_data stream wanted_channel mode))
        
        (close-input-port stream)

        curve_data_list          ; return the curve data
  )
)

; get the curve data and apply it to the drawable
(define (kp24_apply_curve drawable curve_filepath wanted_channel histogram mode)
  (let*
        (
          (curve_array 0)
          (curve_data (make-vector 256))
          (loop_count 0) (use_count 0)
          (this_value 0)
        )
        (set! curve_array (list->vector (kp24_read_channel_curve curve_filepath wanted_channel mode)))
        (set! loop_count 0)
        (set! use_count -1)
        (while (< loop_count (vector-length curve_array))  ; scan through the data read from the file
          (begin
            (set! this_value (vector-ref curve_array loop_count))
            (if (= this_value -1)  ; disguard all the -1 coordinates (only relevent in spline curves)
              ()
              (begin               ; not -1 so apply the multiplier and save the value
                (set! use_count (+ 1 use_count))
                (vector-set! curve_data use_count (* 255 this_value))
              )
            )
            (set! loop_count (+ 1 loop_count))
          )
        )
        (if (= mode 0) ; choose between spline and explicit curves
          (gimp-curves-spline drawable histogram (+ 1 use_count) curve_data)    ; apply the spline curve
          (gimp-curves-explicit drawable histogram (+ 1 use_count) curve_data)  ; apply the explicit curve
        )
  )
)


; this is the main routine
(define (script-fu-kp24_read_curves image drawable curve_filepath mode)
  (let* (
        )
   ; Consider everything that happens in this script as a single step as far as the undo buffer is concerned        
        (gimp-image-undo-group-start image)
 
        (kp24_apply_curve drawable curve_filepath 'value HISTOGRAM-VALUE mode)
        (kp24_apply_curve drawable curve_filepath 'red   HISTOGRAM-RED   mode)
        (kp24_apply_curve drawable curve_filepath 'green HISTOGRAM-GREEN mode)
        (kp24_apply_curve drawable curve_filepath 'blue  HISTOGRAM-BLUE  mode)
        (if (= (car (gimp-drawable-has-alpha drawable)) TRUE) ; only apply the alpha curve if the layer has an alpha channel
          (kp24_apply_curve drawable curve_filepath 'alpha HISTOGRAM-ALPHA mode)  
        )

; flush the display
        (gimp-displays-flush)
        (gimp-image-undo-group-end image) ; Finished the script so close the undo buffer
  )
)

; All of these values are defined at the top of the file for convienience
(script-fu-register selfprocname
		    selfmenuentry
		    tipstrip
		    selfauthor
		    selfcopyright
		    selffileversion
		    "RGB*"
		    SF-IMAGE "Input Image" 0
		    SF-DRAWABLE "Input Drawable" 0
                    SF-FILENAME "GIMP Curves File" (string-append gimp-directory DIR-SEPARATOR "curves" DIR-SEPARATOR "s-curve")
                    SF-OPTION _"Use Spline or Explicit Curve" '(_"Spline" _"Explicit")
)

; register it in the menu defined at the top
(script-fu-menu-register selfprocname selfmenuroot)  ; uncomment this line (remove the leading semi-colon) to make it appear in the menus


; batch mode
(define (kp24_batch_curves_from_file curve_filepath mode file_extension)
  (let*
    (
      (varFileList (cadr (file-glob (string-append "*" file_extension) 1))) ; make a list of all the files that match the file extension
    )
    (for-each
      (lambda (filename)
        (let* (
               (image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))  ; load the image
               (drawable (car (gimp-image-flatten image)))
              )
              (gimp-message (string-append "processing-" filename))
              (script-fu-kp24_read_curves image drawable curve_filepath mode)   ; do the thing                  
              (gimp-file-save RUN-NONINTERACTIVE image drawable filename filename)
              (gimp-image-delete image)                  ; unload the image           
        )
      )
      varFileList
    )
  )
)



;############################################################################################################
; Curve file in this format (as saved by GIMP 2.6.7):

;# GIMP curves tool settings
;
;(time 0)
;(channel value)
;(curve
;    (curve-type smooth)
;    (n-points 17)
;    (points 34 0.000000 0.000000 -1.000000 -1.000000 -1.000000 -1.000000 0.170732 0.070313 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 0.759146 0.902344 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 1.000000 1.000000)
;    (n-samples 256)
;    (samples 256 0.000000 0.000093 0.000190 0.000297 0.000419 0.000560 0.000725 0.000919 0.001147 0.001413 0.001722 0.002080 0.002491 0.002960 0.003491 0.004090 0.004762 0.005510 0.006340 0.007258 0.008266 0.009372 0.010578 0.011891 0.013314 0.014853 0.016513 0.018298 0.020213 0.022263 0.024453 0.026788 0.029272 0.031911 0.034708 0.037670 0.040800 0.044104 0.047586 0.051251 0.055105 0.059151 0.063395 0.067841 0.070313 0.074993 0.079712 0.084469 0.089263 0.094094 0.098961 0.103863 0.108801 0.113773 0.118779 0.123818 0.128891 0.133996 0.139133 0.144301 0.149499 0.154728 0.159987 0.165275 0.170591 0.175935 0.181307 0.186706 0.192131 0.197583 0.203059 0.208560 0.214086 0.219635 0.225207 0.230802 0.236419 0.242058 0.247718 0.253398 0.259098 0.264817 0.270555 0.276312 0.282086 0.287878 0.293686 0.299510 0.305350 0.311205 0.317074 0.322957 0.328854 0.334764 0.340685 0.346619 0.352564 0.358520 0.364486 0.370461 0.376446 0.382439 0.388440 0.394448 0.400464 0.406486 0.412513 0.418546 0.424584 0.430626 0.436671 0.442720 0.448771 0.454825 0.460880 0.466935 0.472991 0.479048 0.485103 0.491157 0.497210 0.503260 0.509307 0.515351 0.521391 0.527426 0.533457 0.539482 0.545501 0.551513 0.557518 0.563515 0.569505 0.575485 0.581456 0.587417 0.593368 0.599307 0.605236 0.611152 0.617056 0.622946 0.628823 0.634685 0.640533 0.646366 0.652182 0.657983 0.663766 0.669532 0.675280 0.681010 0.686720 0.692410 0.698081 0.703731 0.709359 0.714966 0.720550 0.726112 0.731650 0.737164 0.742654 0.748119 0.753558 0.758970 0.764357 0.769716 0.775047 0.780350 0.785624 0.790869 0.796083 0.801268 0.806421 0.811543 0.816633 0.821690 0.826714 0.831704 0.836660 0.841581 0.846467 0.851317 0.856130 0.860907 0.865646 0.870347 0.875009 0.879632 0.884216 0.888759 0.893262 0.897723 0.902344 0.906672 0.910865 0.914926 0.918857 0.922659 0.926335 0.929888 0.933319 0.936631 0.939826 0.942906 0.945874 0.948731 0.951481 0.954124 0.956664 0.959103 0.961442 0.963684 0.965832 0.967888 0.969853 0.971730 0.973521 0.975229 0.976856 0.978403 0.979874 0.981270 0.982594 0.983848 0.985034 0.986154 0.987211 0.988206 0.989143 0.990022 0.990848 0.991621 0.992344 0.993019 0.993649 0.994235 0.994780 0.995287 0.995756 0.996191 0.996595 0.996968 0.997313 0.997633 0.997930 0.998205 0.998462 0.998703 0.998929 0.999143 0.999347 0.999543 0.999734 1.000000))
;(time 0)
;(channel red)
;(curve
;    (curve-type smooth)
;    (n-points 17)
;    (points 34 0.000000 0.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 1.000000 1.000000)
;    (n-samples 256)
;    (samples 256 0.000000 0.003922 0.007843 0.011765 0.015686 0.019608 0.023529 0.027451 0.031373 0.035294 0.039216 0.043137 0.047059 0.050980 0.054902 0.058824 0.062745 0.066667 0.070588 0.074510 0.078431 0.082353 0.086275 0.090196 0.094118 0.098039 0.101961 0.105882 0.109804 0.113725 0.117647 0.121569 0.125490 0.129412 0.133333 0.137255 0.141176 0.145098 0.149020 0.152941 0.156863 0.160784 0.164706 0.168627 0.172549 0.176471 0.180392 0.184314 0.188235 0.192157 0.196078 0.200000 0.203922 0.207843 0.211765 0.215686 0.219608 0.223529 0.227451 0.231373 0.235294 0.239216 0.243137 0.247059 0.250980 0.254902 0.258824 0.262745 0.266667 0.270588 0.274510 0.278431 0.282353 0.286275 0.290196 0.294118 0.298039 0.301961 0.305882 0.309804 0.313725 0.317647 0.321569 0.325490 0.329412 0.333333 0.337255 0.341176 0.345098 0.349020 0.352941 0.356863 0.360784 0.364706 0.368627 0.372549 0.376471 0.380392 0.384314 0.388235 0.392157 0.396078 0.400000 0.403922 0.407843 0.411765 0.415686 0.419608 0.423529 0.427451 0.431373 0.435294 0.439216 0.443137 0.447059 0.450980 0.454902 0.458824 0.462745 0.466667 0.470588 0.474510 0.478431 0.482353 0.486275 0.490196 0.494118 0.498039 0.501961 0.505882 0.509804 0.513725 0.517647 0.521569 0.525490 0.529412 0.533333 0.537255 0.541176 0.545098 0.549020 0.552941 0.556863 0.560784 0.564706 0.568627 0.572549 0.576471 0.580392 0.584314 0.588235 0.592157 0.596078 0.600000 0.603922 0.607843 0.611765 0.615686 0.619608 0.623529 0.627451 0.631373 0.635294 0.639216 0.643137 0.647059 0.650980 0.654902 0.658824 0.662745 0.666667 0.670588 0.674510 0.678431 0.682353 0.686275 0.690196 0.694118 0.698039 0.701961 0.705882 0.709804 0.713725 0.717647 0.721569 0.725490 0.729412 0.733333 0.737255 0.741176 0.745098 0.749020 0.752941 0.756863 0.760784 0.764706 0.768627 0.772549 0.776471 0.780392 0.784314 0.788235 0.792157 0.796078 0.800000 0.803922 0.807843 0.811765 0.815686 0.819608 0.823529 0.827451 0.831373 0.835294 0.839216 0.843137 0.847059 0.850980 0.854902 0.858824 0.862745 0.866667 0.870588 0.874510 0.878431 0.882353 0.886275 0.890196 0.894118 0.898039 0.901961 0.905882 0.909804 0.913725 0.917647 0.921569 0.925490 0.929412 0.933333 0.937255 0.941176 0.945098 0.949020 0.952941 0.956863 0.960784 0.964706 0.968627 0.972549 0.976471 0.980392 0.984314 0.988235 0.992157 0.996078 1.000000))
;(time 0)
;(channel green)
;(curve
;    (curve-type smooth)
;    (n-points 17)
;    (points 34 0.000000 0.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 1.000000 1.000000)
;    (n-samples 256)
;    (samples 256 0.000000 0.003922 0.007843 0.011765 0.015686 0.019608 0.023529 0.027451 0.031373 0.035294 0.039216 0.043137 0.047059 0.050980 0.054902 0.058824 0.062745 0.066667 0.070588 0.074510 0.078431 0.082353 0.086275 0.090196 0.094118 0.098039 0.101961 0.105882 0.109804 0.113725 0.117647 0.121569 0.125490 0.129412 0.133333 0.137255 0.141176 0.145098 0.149020 0.152941 0.156863 0.160784 0.164706 0.168627 0.172549 0.176471 0.180392 0.184314 0.188235 0.192157 0.196078 0.200000 0.203922 0.207843 0.211765 0.215686 0.219608 0.223529 0.227451 0.231373 0.235294 0.239216 0.243137 0.247059 0.250980 0.254902 0.258824 0.262745 0.266667 0.270588 0.274510 0.278431 0.282353 0.286275 0.290196 0.294118 0.298039 0.301961 0.305882 0.309804 0.313725 0.317647 0.321569 0.325490 0.329412 0.333333 0.337255 0.341176 0.345098 0.349020 0.352941 0.356863 0.360784 0.364706 0.368627 0.372549 0.376471 0.380392 0.384314 0.388235 0.392157 0.396078 0.400000 0.403922 0.407843 0.411765 0.415686 0.419608 0.423529 0.427451 0.431373 0.435294 0.439216 0.443137 0.447059 0.450980 0.454902 0.458824 0.462745 0.466667 0.470588 0.474510 0.478431 0.482353 0.486275 0.490196 0.494118 0.498039 0.501961 0.505882 0.509804 0.513725 0.517647 0.521569 0.525490 0.529412 0.533333 0.537255 0.541176 0.545098 0.549020 0.552941 0.556863 0.560784 0.564706 0.568627 0.572549 0.576471 0.580392 0.584314 0.588235 0.592157 0.596078 0.600000 0.603922 0.607843 0.611765 0.615686 0.619608 0.623529 0.627451 0.631373 0.635294 0.639216 0.643137 0.647059 0.650980 0.654902 0.658824 0.662745 0.666667 0.670588 0.674510 0.678431 0.682353 0.686275 0.690196 0.694118 0.698039 0.701961 0.705882 0.709804 0.713725 0.717647 0.721569 0.725490 0.729412 0.733333 0.737255 0.741176 0.745098 0.749020 0.752941 0.756863 0.760784 0.764706 0.768627 0.772549 0.776471 0.780392 0.784314 0.788235 0.792157 0.796078 0.800000 0.803922 0.807843 0.811765 0.815686 0.819608 0.823529 0.827451 0.831373 0.835294 0.839216 0.843137 0.847059 0.850980 0.854902 0.858824 0.862745 0.866667 0.870588 0.874510 0.878431 0.882353 0.886275 0.890196 0.894118 0.898039 0.901961 0.905882 0.909804 0.913725 0.917647 0.921569 0.925490 0.929412 0.933333 0.937255 0.941176 0.945098 0.949020 0.952941 0.956863 0.960784 0.964706 0.968627 0.972549 0.976471 0.980392 0.984314 0.988235 0.992157 0.996078 1.000000))
;(time 0)
;(channel blue)
;(curve
;    (curve-type smooth)
;    (n-points 17)
;    (points 34 0.000000 0.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 1.000000 1.000000)
;    (n-samples 256)
;    (samples 256 0.000000 0.003922 0.007843 0.011765 0.015686 0.019608 0.023529 0.027451 0.031373 0.035294 0.039216 0.043137 0.047059 0.050980 0.054902 0.058824 0.062745 0.066667 0.070588 0.074510 0.078431 0.082353 0.086275 0.090196 0.094118 0.098039 0.101961 0.105882 0.109804 0.113725 0.117647 0.121569 0.125490 0.129412 0.133333 0.137255 0.141176 0.145098 0.149020 0.152941 0.156863 0.160784 0.164706 0.168627 0.172549 0.176471 0.180392 0.184314 0.188235 0.192157 0.196078 0.200000 0.203922 0.207843 0.211765 0.215686 0.219608 0.223529 0.227451 0.231373 0.235294 0.239216 0.243137 0.247059 0.250980 0.254902 0.258824 0.262745 0.266667 0.270588 0.274510 0.278431 0.282353 0.286275 0.290196 0.294118 0.298039 0.301961 0.305882 0.309804 0.313725 0.317647 0.321569 0.325490 0.329412 0.333333 0.337255 0.341176 0.345098 0.349020 0.352941 0.356863 0.360784 0.364706 0.368627 0.372549 0.376471 0.380392 0.384314 0.388235 0.392157 0.396078 0.400000 0.403922 0.407843 0.411765 0.415686 0.419608 0.423529 0.427451 0.431373 0.435294 0.439216 0.443137 0.447059 0.450980 0.454902 0.458824 0.462745 0.466667 0.470588 0.474510 0.478431 0.482353 0.486275 0.490196 0.494118 0.498039 0.501961 0.505882 0.509804 0.513725 0.517647 0.521569 0.525490 0.529412 0.533333 0.537255 0.541176 0.545098 0.549020 0.552941 0.556863 0.560784 0.564706 0.568627 0.572549 0.576471 0.580392 0.584314 0.588235 0.592157 0.596078 0.600000 0.603922 0.607843 0.611765 0.615686 0.619608 0.623529 0.627451 0.631373 0.635294 0.639216 0.643137 0.647059 0.650980 0.654902 0.658824 0.662745 0.666667 0.670588 0.674510 0.678431 0.682353 0.686275 0.690196 0.694118 0.698039 0.701961 0.705882 0.709804 0.713725 0.717647 0.721569 0.725490 0.729412 0.733333 0.737255 0.741176 0.745098 0.749020 0.752941 0.756863 0.760784 0.764706 0.768627 0.772549 0.776471 0.780392 0.784314 0.788235 0.792157 0.796078 0.800000 0.803922 0.807843 0.811765 0.815686 0.819608 0.823529 0.827451 0.831373 0.835294 0.839216 0.843137 0.847059 0.850980 0.854902 0.858824 0.862745 0.866667 0.870588 0.874510 0.878431 0.882353 0.886275 0.890196 0.894118 0.898039 0.901961 0.905882 0.909804 0.913725 0.917647 0.921569 0.925490 0.929412 0.933333 0.937255 0.941176 0.945098 0.949020 0.952941 0.956863 0.960784 0.964706 0.968627 0.972549 0.976471 0.980392 0.984314 0.988235 0.992157 0.996078 1.000000))
;(time 0)
;(channel alpha)
;(curve
;    (curve-type smooth)
;    (n-points 17)
;    (points 34 0.000000 0.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 1.000000 1.000000)
;    (n-samples 256)
;    (samples 256 0.000000 0.003922 0.007843 0.011765 0.015686 0.019608 0.023529 0.027451 0.031373 0.035294 0.039216 0.043137 0.047059 0.050980 0.054902 0.058824 0.062745 0.066667 0.070588 0.074510 0.078431 0.082353 0.086275 0.090196 0.094118 0.098039 0.101961 0.105882 0.109804 0.113725 0.117647 0.121569 0.125490 0.129412 0.133333 0.137255 0.141176 0.145098 0.149020 0.152941 0.156863 0.160784 0.164706 0.168627 0.172549 0.176471 0.180392 0.184314 0.188235 0.192157 0.196078 0.200000 0.203922 0.207843 0.211765 0.215686 0.219608 0.223529 0.227451 0.231373 0.235294 0.239216 0.243137 0.247059 0.250980 0.254902 0.258824 0.262745 0.266667 0.270588 0.274510 0.278431 0.282353 0.286275 0.290196 0.294118 0.298039 0.301961 0.305882 0.309804 0.313725 0.317647 0.321569 0.325490 0.329412 0.333333 0.337255 0.341176 0.345098 0.349020 0.352941 0.356863 0.360784 0.364706 0.368627 0.372549 0.376471 0.380392 0.384314 0.388235 0.392157 0.396078 0.400000 0.403922 0.407843 0.411765 0.415686 0.419608 0.423529 0.427451 0.431373 0.435294 0.439216 0.443137 0.447059 0.450980 0.454902 0.458824 0.462745 0.466667 0.470588 0.474510 0.478431 0.482353 0.486275 0.490196 0.494118 0.498039 0.501961 0.505882 0.509804 0.513725 0.517647 0.521569 0.525490 0.529412 0.533333 0.537255 0.541176 0.545098 0.549020 0.552941 0.556863 0.560784 0.564706 0.568627 0.572549 0.576471 0.580392 0.584314 0.588235 0.592157 0.596078 0.600000 0.603922 0.607843 0.611765 0.615686 0.619608 0.623529 0.627451 0.631373 0.635294 0.639216 0.643137 0.647059 0.650980 0.654902 0.658824 0.662745 0.666667 0.670588 0.674510 0.678431 0.682353 0.686275 0.690196 0.694118 0.698039 0.701961 0.705882 0.709804 0.713725 0.717647 0.721569 0.725490 0.729412 0.733333 0.737255 0.741176 0.745098 0.749020 0.752941 0.756863 0.760784 0.764706 0.768627 0.772549 0.776471 0.780392 0.784314 0.788235 0.792157 0.796078 0.800000 0.803922 0.807843 0.811765 0.815686 0.819608 0.823529 0.827451 0.831373 0.835294 0.839216 0.843137 0.847059 0.850980 0.854902 0.858824 0.862745 0.866667 0.870588 0.874510 0.878431 0.882353 0.886275 0.890196 0.894118 0.898039 0.901961 0.905882 0.909804 0.913725 0.917647 0.921569 0.925490 0.929412 0.933333 0.937255 0.941176 0.945098 0.949020 0.952941 0.956863 0.960784 0.964706 0.968627 0.972549 0.976471 0.980392 0.984314 0.988235 0.992157 0.996078 1.000000))
;
;# end of curves tool settings
